[fix](binlog) Report missing row binlog for INCR queries#65481
Conversation
|
Thank you for your contribution to Apache Doris. Please clearly describe your PR:
|
|
run buildall |
fdd5d3a to
0d0d948
Compare
|
run buildall |
TPC-H: Total hot run time: 29729 ms |
FE Regression Coverage ReportIncrement line coverage |
TPC-DS: Total hot run time: 180355 ms |
ClickBench: Total hot run time: 25.07 s |
|
run fe_ut |
|
run buildall |
TPC-H: Total hot run time: 29642 ms |
TPC-DS: Total hot run time: 179813 ms |
ClickBench: Total hot run time: 25.03 s |
FE UT Coverage ReportIncrement line coverage |
FE Regression Coverage ReportIncrement line coverage |
|
/review |
|
PR approved by at least one committer and no changes requested. |
|
PR approved by anyone and no changes requested. |
There was a problem hiding this comment.
Review result: no blocking or inline issues found.
I reviewed the @incr binding change, the added FE unit test, and the regression test. The new validation order fails cleanly before RowBinlogTableWrapper can dereference missing row-binlog metadata, while valid row-binlog scans still use the wrapper before output binding and downstream scan-node translation. Non-@incr OLAP scan params still flow to validateOlapTable(), so branch/tag/snapshot/reset are not newly accepted on ordinary OLAP tables.
Critical checkpoint conclusions:
- Goal/test proof: the PR addresses missing row-binlog
@increrrors and adds both FE analyzer and regression negative coverage. - Scope/focus: the implementation is small and localized to
BindRelationplus targeted tests. - Concurrency/lifecycle/config/persistence/protocol: no new concurrency, lifecycle, config, persistence, or FE-BE protocol surface was introduced.
- Parallel paths: table-stream scan params remain on the separate stream path; valid row-binlog and direct-index
@incrpaths were checked. - Test coverage: the new tests cover the intended no-row-binlog failure; I did not run tests locally because this runner is review-only.
- User focus: no additional user-provided focus points were supplied.
Subagent convergence: round 1 normal implementation review, tests/coverage review, and risk-focused wrapper-validation review all returned NO_NEW_VALUABLE_FINDINGS; all main risk items were dismissed with code evidence.
What problem does this PR solve?
Issue Number: close #65309
Related PR: #xxx
Problem Summary:
INCR analysis constructed the row-binlog table wrapper before validating that ROW binlog was enabled. Tables without ROW binlog therefore hit an unmessaged precondition in getRowBinlogMeta(), returning an empty detailMessage. Validate INCR conditions before wrapper construction so clients receive the actionable analysis error.
Release note
None
Check List (For Author)
Test
Behavior changed:
Does this need documentation?
Check List (For Reviewer who merge this PR)